package cn.itcast.nems.order.dao.entity;

import cn.itcast.nems.common.entity.UUIDEntity;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 优惠凭单
 *
 * @author ChangLu.Gao
 * @version v1.0
 * @program nems-server
 * @description
 * @date 2023/12/05 18:09
 */
@EqualsAndHashCode(callSuper = false)
@Data
@TableName("e2_journal_discount")
public class JournalDiscount extends UUIDEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 业务实际办理日期
     */
    private LocalDateTime bizDate;
    /**
     * 优惠规则ID;原EMS管理
     */
    private String discountId;
    /**
     * 优惠规则名称;原EMS管理
     */
    private String discountName;
    /**
     * 优惠券类型;原EMS管理的；枚举值：金额|CASH、折扣|DISCOUNT。注：来自于优惠规则的类型
     */
    private String discountType;
    /**
     * 优惠金额或折扣
     */
    private BigDecimal discountValue;
    /**
     * 优惠券规则；JSON形式存优惠券规则明细
     */
    private String discountRule;
    /**
     * 业务线
     */
    private String businessLineId;
    /**
     * 业务线名称
     */
    private String businessLineName;
    /**
     * 申请人数
     */
    private Integer quantity;
    /**
     * 状态;枚举值：草稿｜DRAFT、待审批｜PENDING、审批中｜APPROVING、审批未通过｜REJECTED、已完成｜FINISHED
     */
    private String state;
    /**
     * 备注
     */
    @TableField(updateStrategy = FieldStrategy.ALWAYS)
    private String remark;

    /**
     * 员工姓名
     */
    private String employeeName;
    /**
     * 校区ID
     */
    private String employeeCampusId;
    /**
     * 校区名称
     */
    private String employeeCampusName ;
    /**
     * 员工入职日期
     */
    private LocalDate employeeEntryDate;
    /**
     * 亲属关系
     */
    private String employeeKinship;
}
